/*************************************************************************************
 * Nombre del archivo: Cola_FCFS.java
 * Universidad del Valle de Guatemala
 * Curso: Sistemas Operativos
 * @author martin
 *          Martín Guzmán 08041
 * Fecha: Febrero de 2010
 * Descripción:
*************************************************************************************/
import java.util.LinkedList;

public class Cola_FCFS extends Cola_Abstracta<Proceso>{

    public Cola_FCFS(){}

    /***********************************************
     * Método: get
     * Uso: obtiene el elemento especificado
     * @return G con el elemento de la cola...
    ***********************************************/
    public Proceso get(int i){
        return this.lista.get(i);
    }

    /***********************************************
     * Método: add
     * Uso: agrega un nuevo elemento a la cola
     * @return void agrega al final de la cola
    ***********************************************/
    public void add(Proceso nuevo){
        this.lista.add(nuevo);
        this.ultimo_entrante = nuevo;

        this.ultimo_entrante.setQuantum_restante(this.quantum);
        this.ultimo_entrante.setEstado(2);//para poner en estado ready
        this.ultimo_entrante.cola_en_la_que_esta=this.getNumero_cola();
        this.ultimo_entrante.io_waiting=false;
    }

    /***********************************************
     * Método: getLast_in
     * Uso: obtiene el último elemento que entró a la cola
     * @return G con el último objeto que entró a la cola
    ***********************************************/
    public Proceso getLast_in() {
        return this.ultimo_entrante;
    }
}
